Page({
  data: {
    // 车辆详情数据
    carDetail: {},
    
    // 图片轮播相关
    currentImageIndex: 0,
    
    // 收藏状态
    isFavorite: false,
    
    // 预约状态
    isBooked: false,
    
    // 详细参数展开状态
    isParamExpanded: false,
    
    // 模拟车辆详情数据
    carDetailData: {
      id: 1,
      name: '特斯拉 Model 3',
      subtitle: '2022款后轮驱动版',
      originalPrice: '77.254',
      currentPrice: '382,561',
      discountAmount: '77,254',
      downPayment: '53,211',
      monthlyPayment: '800',
      
      // 基本信息
      basicInfo: {
        mileage: '610公里',
        acceleration: '5.6秒',
        transmission: 'EAP',
        fuelType: '纯电续航',
        displacement: '百公里加速',
        driveType: '自动驾驶级别',
        age: '70度(三元锂)',
        firstRegistration: '2022-06',
        annualMileage: '0.8万公里',
        batteryType: '电池',
        batteryLife: '首次上牌',
        warrantyDistance: '表显里程'
      },
      
      // 服务信息
      services: {
        dealer: '门店现车',
        transfer: '服务费￥800',
        warranty: '7天无理由退车 | 1年保修'
      },
      
      // 图片列表
      images: [
        'https://images.unsplash.com/photo-1549317661-bd32c8ce0db2?w=800&h=600&fit=crop',
        'https://images.unsplash.com/photo-1552519507-da3b142c6e3d?w=800&h=600&fit=crop',
        'https://images.unsplash.com/photo-1503376780353-7e6692767b70?w=800&h=600&fit=crop',
        'https://images.unsplash.com/photo-1549317661-bd32c8ce0db2?w=800&h=600&fit=crop'
      ],
      
      // 车辆亮点
      highlights: ['100%自营', '专业质检', '货到付款', '7天无理由退车'],
      
      // 详细配置参数
      detailParams: [
        { label: '车身颜色', value: '珍珠白' },
        { label: '内饰颜色', value: '黑色' },
        { label: '座椅材质', value: '仿皮' },
        { label: '天窗类型', value: '全景天窗' },
        { label: '轮毂尺寸', value: '18英寸' },
        { label: '驱动方式', value: '后轮驱动' },
        { label: '变速箱', value: '电动车单速变速箱' },
        { label: '最大功率', value: '202kW' },
        { label: '最大扭矩', value: '404N·m' },
        { label: '电池容量', value: '60kWh' },
        { label: '续航里程', value: '556km' },
        { label: '充电时间', value: '快充1小时' }
      ]
    }
  },

  // 页面生命周期
  onLoad: function (options) {
    console.log('车辆详情页面加载', options);
    
    // 获取传入的车辆ID
    const carId = options.id || 1;
    
    // 模拟加载车辆详情数据
    this.loadCarDetail(carId);
  },

  onShow: function () {
    console.log('车辆详情页面显示');
    // 重新检查收藏状态
    this.checkFavoriteStatus();
  },

  // 加载车辆详情
  loadCarDetail: function(carId) {
    console.log('开始加载车辆详情，ID:', carId);
    
    wx.showLoading({
      title: '加载中...'
    });

    var self = this;
    
    // 从真实API获取车辆详情
    wx.request({
      url: `http://localhost:6002/carInfo/findDetailById?id=${carId}`,
      method: 'GET',
      success: function(res) {
        console.log('车辆详情API响应:', res.data);
        
        if (res.data && res.data.code === 200 && res.data.data) {
          self.handleDetailAPISuccess(res.data.data);
        } else {
          console.error('车辆详情API返回错误:', res.data);
          // 使用模拟数据作为备用
          self.loadMockCarDetail(carId);
        }
      },
      fail: function(error) {
        console.error('车辆详情API请求失败:', error);
        // 使用模拟数据作为备用
        self.loadMockCarDetail(carId);
      },
      complete: function() {
        wx.hideLoading();
      }
    });
  },

  // 处理详情API成功响应
  handleDetailAPISuccess: function(carData) {
    console.log('处理车辆详情数据:', carData);
    console.log('原始价格数据:', carData.price, '类型:', typeof carData.price);
    
    // 转换API数据为详情页面格式
    var priceInYuan = parseFloat(carData.price || 0);
    var priceInWan = priceInYuan / 10000;
    
    console.log('价格转换结果 - 原价(元):', priceInYuan, '转换后(万元):', priceInWan);
    
    var detailData = {
      id: carData.id,
      name: carData.modelName || '未知车型',
      subtitle: new Date(carData.registerTime).getFullYear() + '款',
      originalPrice: (priceInWan * 1.2).toFixed(2), // 模拟原价，保留2位小数
      currentPrice: priceInWan.toFixed(2), // 当前价格，保留2位小数
      discountAmount: (priceInWan * 0.2).toFixed(2), // 优惠金额
      downPayment: (priceInWan * 0.2).toFixed(2), // 首付，保留2位小数
      monthlyPayment: Math.round(priceInYuan * 0.008).toString(), // 模拟月供（总价的0.8%）
      
      // 基本信息
      basicInfo: {
        mileage: carData.mileage + '万公里',
        acceleration: '未知',
        transmission: carData.gearboxType === '01' ? '自动' : '手动',
        fuelType: carData.fuelType === '01' ? '汽油' : '其他',
        displacement: carData.displacement + 'L',
        driveType: '前置前驱',
        age: carData.carCondition === 1 ? '优秀' : carData.carCondition === 2 ? '良好' : '一般',
        firstRegistration: new Date(carData.registerTime).toLocaleDateString(),
        annualMileage: carData.mileage + '万公里',
        batteryType: '发动机',
        batteryLife: '首次上牌',
        warrantyDistance: '表显里程'
      },
      
      // 服务信息
      services: {
        dealer: '门店现车',
        transfer: '服务费￥800',
        warranty: '7天无理由退车 | 1年保修'
      },
      
      // 图片列表 - 使用主图
      images: [
        carData.mainPic || 'https://images.unsplash.com/photo-1549317661-bd32c8ce0db2?w=800&h=600&fit=crop',
        carData.mainPic || 'https://images.unsplash.com/photo-1552519507-da3b142c6e3d?w=800&h=600&fit=crop',
        carData.mainPic || 'https://images.unsplash.com/photo-1503376780353-7e6692767b70?w=800&h=600&fit=crop'
      ],
      
      // 车辆亮点
      highlights: ['100%自营', '专业质检', '货到付款', '7天无理由退车'],
      
      // 详细配置参数
      detailParams: [
        { label: '车身颜色', value: carData.color || '未知' },
        { label: '内饰颜色', value: '黑色' },
        { label: '座椅材质', value: '仿皮' },
        { label: '天窗类型', value: '全景天窗' },
        { label: '轮毂尺寸', value: '18英寸' },
        { label: '驱动方式', value: '前置前驱' },
        { label: '变速箱', value: carData.gearboxType === '01' ? '自动变速箱' : '手动变速箱' },
        { label: '排量', value: carData.displacement + 'L' },
        { label: '燃油类型', value: carData.fuelType === '01' ? '汽油' : '其他' },
        { label: '车辆状况', value: carData.carCondition === 1 ? '优秀' : carData.carCondition === 2 ? '良好' : '一般' }
      ]
    };
    
    // 检查收藏状态
    let isFavorite = false;
    try {
      const favorites = wx.getStorageSync('favorites') || [];
      isFavorite = favorites.some(item => item.id == carData.id);
    } catch (error) {
      console.error('检查收藏状态失败:', error);
    }
    
    this.setData({
      carDetail: detailData,
      isFavorite: isFavorite
    });
    
    // 添加浏览记录
    this.addToBrowseHistory();
  },

  // 加载模拟车辆详情（备用方案）
  loadMockCarDetail: function(carId) {
    console.log('使用模拟数据加载车辆详情');
    
    setTimeout(() => {
      // 检查当前车辆是否已收藏
      let isFavorite = false;
      try {
        const favorites = wx.getStorageSync('favorites') || [];
        isFavorite = favorites.some(item => item.id == carId);
      } catch (error) {
        console.error('检查收藏状态失败:', error);
      }
      
      this.setData({
        carDetail: this.data.carDetailData,
        isFavorite: isFavorite
      });
      
      // 添加浏览记录
      this.addToBrowseHistory();
    }, 500);
  },

  // 图片轮播切换
  onImageChange: function(e) {
    this.setData({
      currentImageIndex: e.detail.current
    });
  },

  // 预览图片
  previewImages: function() {
    wx.previewImage({
      current: this.data.carDetail.images[this.data.currentImageIndex],
      urls: this.data.carDetail.images
    });
  },

  // 切换收藏状态
  toggleFavorite: function() {
    const isFavorite = !this.data.isFavorite;
    const carDetail = this.data.carDetail;
    
    try {
      // 获取当前收藏列表
      let favorites = wx.getStorageSync('favorites') || [];
      
      if (isFavorite) {
        // 添加到收藏
        const favoriteItem = {
          id: carDetail.id,
          name: carDetail.name,
          subtitle: carDetail.subtitle,
          year: carDetail.subtitle || '2022年',
          mileage: carDetail.basicInfo ? carDetail.basicInfo.mileage : '未知',
          location: '现车在售',
          price: carDetail.currentPrice,
          downPayment: `首付${carDetail.downPayment}万`,
          image: carDetail.images && carDetail.images.length > 0 ? carDetail.images[0] : 'https://images.unsplash.com/photo-1549317661-bd32c8ce0db2?w=400&h=300&fit=crop',
          isNew: true,
          isHot: true
        };
        
        // 检查是否已经收藏
        const existIndex = favorites.findIndex(item => item.id === carDetail.id);
        if (existIndex === -1) {
          favorites.push(favoriteItem);
        }
      } else {
        // 从收藏中移除
        favorites = favorites.filter(item => item.id !== carDetail.id);
      }
      
      // 保存到本地存储
      wx.setStorageSync('favorites', favorites);
      
      this.setData({
        isFavorite: isFavorite
      });
      
      wx.showToast({
        title: isFavorite ? '已收藏' : '已取消收藏',
        icon: 'success'
      });
      
      console.log('收藏操作完成，当前收藏状态:', isFavorite);
      console.log('当前收藏列表长度:', favorites.length);
    } catch (error) {
      console.error('收藏操作失败:', error);
      wx.showToast({
        title: '操作失败',
        icon: 'none'
      });
    }
  },

  // 分享功能
  onShareAppMessage: function() {
    const carDetail = this.data.carDetail;
    return {
      title: `${carDetail.name} ${carDetail.subtitle}`,
      path: `/pages/car-detail/car-detail?id=${carDetail.id}`,
      imageUrl: carDetail.images[0]
    };
  },

  // 切换参数展开状态
  toggleParamExpanded: function() {
    this.setData({
      isParamExpanded: !this.data.isParamExpanded
    });
  },

  // 拨打电话
  makePhoneCall: function() {
    wx.makePhoneCall({
      phoneNumber: '400-123-4567',
      fail: function() {
        wx.showToast({
          title: '拨号失败',
          icon: 'error'
        });
      }
    });
  },

  // 立即预订
  bookNow: function() {
    const carDetail = this.data.carDetail;
    
    wx.showModal({
      title: '确认预订',
      content: `确认预订 ${carDetail.name}？\n预订金：￥0.2万`,
      confirmText: '确认预订',
      cancelText: '再想想',
      success: (res) => {
        if (res.confirm) {
          this.setData({
            isBooked: true
          });
          
          wx.showToast({
            title: '预订成功！',
            icon: 'success'
          });
          
          // 模拟跳转到支付页面
          setTimeout(() => {
            wx.showModal({
              title: '预订成功',
              content: '我们的销售顾问将在30分钟内联系您确认详情',
              confirmText: '查看订单',
              cancelText: '知道了',
              success: (modalRes) => {
                if (modalRes.confirm) {
                  wx.navigateTo({
                    url: '/pages/order/order'
                  });
                }
              }
            });
          }, 1500);
        }
      }
    });
  },

  // 返回上一页
  goBack: function() {
    wx.navigateBack({
      delta: 1
    });
  },

  // 查看更多同品牌车辆
  viewMoreSameBrand: function() {
    wx.showToast({
      title: '查看更多同品牌',
      icon: 'none'
    });
  },

  // 查看车辆检测报告
  viewInspectionReport: function() {
    wx.showToast({
      title: '查看检测报告',
      icon: 'none'
    });
  },

  // 联系客服
  contactService: function() {
    wx.showActionSheet({
      itemList: ['在线客服', '电话咨询', '微信客服'],
      success: (res) => {
        const actions = ['在线客服', '电话咨询', '微信客服'];
        wx.showToast({
          title: `选择了${actions[res.tapIndex]}`,
          icon: 'none'
        });
      }
    });
  },

  // 打开咨询
  openConsultation: function() {
    wx.showActionSheet({
      itemList: ['在线咨询', '微信咨询', '预约看车'],
      success: (res) => {
        switch(res.tapIndex) {
          case 0:
            wx.showToast({
              title: '正在连接客服...',
              icon: 'loading',
              duration: 1000
            });
            break;
          case 1:
            wx.showModal({
              title: '微信咨询',
              content: '请添加微信号：CarDealer2024',
              confirmText: '复制微信号',
              success: (modalRes) => {
                if (modalRes.confirm) {
                  wx.setClipboardData({
                    data: 'CarDealer2024',
                    success: () => {
                      wx.showToast({
                        title: '微信号已复制',
                        icon: 'success'
                      });
                    }
                  });
                }
              }
            });
            break;
          case 2:
            wx.showModal({
              title: '预约看车',
              content: '请留下您的联系方式，我们将尽快联系您安排看车时间',
              confirmText: '确认预约',
              success: (modalRes) => {
                if (modalRes.confirm) {
                  wx.showToast({
                    title: '预约成功',
                    icon: 'success'
                  });
                }
              }
            });
            break;
        }
      }
    });
  },

  // 检查收藏状态
  checkFavoriteStatus: function() {
    if (!this.data.carDetail || !this.data.carDetail.id) {
      return;
    }
    
    let isFavorite = false;
    try {
      const favorites = wx.getStorageSync('favorites') || [];
      isFavorite = favorites.some(item => item.id == this.data.carDetail.id);
      console.log('检查收藏状态 - 车辆ID:', this.data.carDetail.id, '是否收藏:', isFavorite);
    } catch (error) {
      console.error('检查收藏状态失败:', error);
    }
    
    this.setData({
      isFavorite: isFavorite
    });
  },

  // 添加到浏览记录
  addToBrowseHistory: function() {
    try {
      const carDetail = this.data.carDetail;
      if (!carDetail || !carDetail.id) {
        return;
      }

      // 构造浏览记录数据
      const browseRecord = {
        id: carDetail.id,
        name: carDetail.name,
        subtitle: carDetail.subtitle,
        year: '2022年',
        mileage: '1.27万公里',
        location: '6d户',
        price: '26.18',
        downPayment: '首付5.68万',
        image: carDetail.images && carDetail.images.length > 0 ? carDetail.images[0] : 'https://images.unsplash.com/photo-1549317661-bd32c8ce0db2?w=400&h=300&fit=crop',
        isNew: true,
        isHot: true,
        browseTime: new Date().toISOString().replace('T', ' ').substring(0, 19)
      };

      // 获取现有浏览记录
      let browseHistory = wx.getStorageSync('browseHistory') || [];
      
      // 检查是否已经存在该车辆的浏览记录
      const existIndex = browseHistory.findIndex(item => item.id === carDetail.id);
      
      if (existIndex !== -1) {
        // 如果存在，更新浏览时间并移到最前面
        browseHistory.splice(existIndex, 1);
      }
      
      // 添加到数组开头
      browseHistory.unshift(browseRecord);
      
      // 限制浏览记录数量，保留最近100条
      if (browseHistory.length > 100) {
        browseHistory = browseHistory.slice(0, 100);
      }
      
      // 保存到本地存储
      wx.setStorageSync('browseHistory', browseHistory);
      
    } catch (error) {
      console.error('保存浏览记录失败:', error);
    }
  }
});
